/* eslint-disable @typescript-eslint/no-explicit-any */
/*
 *  Copyright 2021 Collate
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *  http://www.apache.org/licenses/LICENSE-2.0
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 */

 /**
 * 此模式定义用于发送电子邮件的SMTP设置
 */
export interface SMTPSettings {
    /**
     * 电子邮件实体
     */
    emailingEntity?: string;
    /**
     * 如果启用此选项，密码将通过电子邮件共享
     */
    enableSmtpServer?: boolean;
    /**
     * OpenMetadata服务器端点
     */
    openMetadataUrl: string;
    /**
     * Smtp服务器密码
     */
    password?: string;
    /**
     * 发件人的电子邮件
     */
    senderMail: string;
    /**
     * Smtp服务器端点
     */
    serverEndpoint: string;
    /**
     * Smtp服务器端口
     */
    serverPort: number;
    /**
     * 支持网址
     */
    supportUrl?:             string;
    transportationStrategy?: TransportationStrategy;
    /**
     * Smtp服务器用户名
     */
    username?: string;
}

export enum TransportationStrategy {
    SMTP = "SMTP",
    SMTPTLS = "SMTP_TLS",
    Smtps = "SMTPS",
}
